Communication systems employ various forms of FEC techniques to compensate for errors at the receiver. In wireless communication networks, at the transmitter, additional error-correcting bits, such as parity-check bits, may be added to each block of data prior to transmission. At the receiver, the additional bits are used by a decoder to help recover the original data bits that were transmitted. Some wireless systems use low-density parity check (LDPC) codes, which are linear block codes specified by a parity-check matrix. In some cases, LDPC encoding may provide a coding gain that is higher than some convolutional codes used by some wireless networks. Some systems use LDPC codes that can be decoded by layered LDPC decoding or turbo decoding with message passing for block-permutation LDPC codes. Layered decoding of LDPC codes may further improve coding gain of LDPC codes.
Layered decoding of LDPC coded signals is hardware and processing intensive, resulting in increased weight, size, complexity and/or power consumption. These can be significant drawbacks, especially for portable wireless communication devices.
Thus, there are general needs for decoders and methods for layered decoding of LDPC coded data that require less hardware and/or are less processing intensive, as well as decoders and methods for layered decoding of LDPC coded data that use less power. There are general needs for decoders and methods for layered decoding of LDPC coded data for wireless and wired communication systems, and decoders and methods for layered decoding of LDPC coded data in data storage systems.